A General Framework for Analyzing Shared-Memory Parallel Programs

نویسندگان

  • Jyh-Herng Chow
  • Williams Ludwell Harrison
چکیده

Explicit parallelism greatly complicates the program semantics, especially if concurrent activities are allowed to interact with each other through shared variables. Existing compiler analysis and optimization techniques for sequential programs must be carefully examined before they can be safely applied to parallel programs. In this paper, we present a general framework for analyzing programs with cobegin parallelism, which is based on state space exploration. Reducing the explosion of state space is necessary to make compile-time analysis feasible. This state space explosion problem is relieved first by eliminating redundant interleaving, through the stubborn set theory. Then, abstract interpretation techniques are employed which provide systematic methods for folding related states for further state space reduction. With this framework, we have developed static analysis for obtaining program properties, such as side effects, data dependences, and object lifetimes. The information obtained facilitates program optimization, restructuring, and memory management.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A brief history of shared memory

We present a general framework for defining denotational semantic models of shared memory parallel programs, based on an abstract notion of state. We show how this framework can be used to establish natural relationships between traditional models of concurrency and more recent models based on separation principles. We formulate an intuitively reasonable characterization of when one model of st...

متن کامل

University of Delaware Department of Electrical and Computer Engineering Computer Architecture and Parallel Systems Laboratory Concurrency Analysis for Shared Memory Programs with Textually Unaligned Barriers

Concurrency analysis is a static analysis technique that determines whether two statements or operations in a shared memory program may be executed by different threads concurrently. Concurrency relationships can be derived from the partial ordering among statements imposed by synchronization constructs. Thus, analyzing barrier synchronization is at the core of concurrency analyses for many par...

متن کامل

Automatic Parallel Program Generation and Optimization from Data Decompositions

Data decomposition is probably the most successful method for generating parallel programs. In this paper a general framework is described for the automatic generation of parallel programs based on a separately specified decomposition of the data. To this purpose, programs and data decompositions are expressed in a calculus, called Vcal. It is shown that by rewriting calculus expressions, Singl...

متن کامل

On Analyzing the Cost of Communication in Networks

s of Talks Jean-Loup Baer On the Performance of Cluster Architectures Yosi Ben-Asher The Partitioned PRAM Model, Re-Doing Basic PRAM Algorithms with Limited Resources Artur Czumaj Adaptitive Allocation Processes Ralf Diekmann Load Balancing Strategies for Scientific Computing Applications Martin Dietzfelbinger On Analyzing the Cost of Communication in Networks Pierre Fraigniaud A General Theory...

متن کامل

Concurrency Analysis for Shared Memory Programs with Textually Unaligned Barriers

Concurrency analysis is a static analysis technique that determines whether two statements or operations in a shared memory program may be executed by different threads concurrently. Concurrency relationships can be derived from the partial ordering among statements imposed by synchronization constructs. Thus, analyzing barrier synchronization is at the core of concurrency analyses for many par...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1992